iT邦幫忙

2023 iThome 鐵人賽

DAY 7
0

介紹了許多資料型態後,不知道大家現在有沒有疑問:假設我們現在手上有多個變數,要怎麼知道這個變數裡儲存了甚麼型態的資料?

今天就要來介紹:怎麼查看變數的資料型態,又或者是檢查它是不是某一種資料型態。

  • 查看資料型態
    可以使用class()或是str()這兩個函數,當我們今天只想知道該變數儲存了甚麼型態的資料可以使用class(),如果我們今天想知道儲存的資料是甚麼型態再加上裡面的結構。
    (Tips: 在資料分析中,遇到程式有error時,可以先快速使用class()查看是不是資料型態不對造成的)
# EX1:生成一個list型態的物件,並存入day7這個變數中
day7 = list(day = "Thursday", 
                where = "supermarket", 
                item = c("milk", "apple", "black tea")
           )

# 使用class()查看
class(day7)
[1] "list"

# 使用str()查看,會顯示更多細節
str(day7)
List of 3
 $ day  : chr "Wednesday"
 $ where: chr "supermarket"
 $ item : chr [1:3] "milk" "apple" "black tea"

接著,我們再來看一個dataframe型態的例子
(Tips: 在資料分析中,我們可以先使用str()來查看資料有哪些欄位、欄位的型態以及內容)

# EX2:生成一個dataframe型態的物件,並存入day7這個變數中
day7 = data.frame(
                    item_id = c(1:5),
                    item_name = c("black tea", "bread",
                                  "cookie", "apple",
                                  "milk"),
                    item_cost = c(10, 18, 22, 32, 40)
                )
                
# 使用class()查看
class(day7)
[1] "data.frame"

# 使用str()查看,會顯示更多細節
str(day7)
'data.frame':	5 obs. of  3 variables:
 $ item_id  : int  1 2 3 4 5
 $ item_name: chr  "black tea" "bread" "cookie" "apple" ...
 $ item_cost: num  10 18 22 32 40
  • 檢查變數是不是某一種資料型態
# 將一個數字存入day7這個變數中,並檢查是否為數值型態(會回傳TRUE/FALSE)
day7 = 3
is.numeric(day7)
[1] TRUE

# 檢查是否為字串
is.character(day7)
[1] FALSE

再來看個例子,生成一個list型態的物件,並檢查它是否為dataframe型態

day7 = list(day = "Thursday", 
                where = "supermarket", 
                item = c("milk", "apple", "black tea")
           )
# 先檢查是否為list型態
is.list(day7)
[1] TRUE

#再檢查是否為dataframe型態
is.data.frame(day7)
[1] FALSE

學會查看資料的型態後,我們又往資料分析邁進一步了!
下一篇開始,將介紹一系列常用的資料處理,包含字串的處理、資料的清洗與合併。


上一篇
[Day 6] R語言資料型態(2)
下一篇
[Day 8] R語言文字處理
系列文
30天成為資料分析師-手把手R語言與資料分析教學30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言